import { SaveAdminDto } from '../common/SaveAdminType'
import { AdminActiveListDto } from '../common/AdminActiveType'
import { SysMenuMetaBo, SysFunctionBo } from '../common/SysType'
/**
 * 菜单保存对象
 */
export interface MenuSaveDto extends SaveAdminDto {
	name: string;
	number: number;
	icon?: string;
	path?: string;
	title?: string;
	menuType?: string;
	parentId: string;
	meta?: SysMenuMetaBo;
	functions?: SysFunctionBo[];
}

/**
 * 菜单删除对象
 */
export interface MenuDelDto extends AdminActiveListDto {

}

//菜单返回对象
export interface SysMenuInfoBo {
	id: string;
	title: string;
	number: number;
	parentId: string;
	name: string;
	path: string;
	meta: SysMenuMetaBo;
	systemName: string;
	children: SysMenuInfoBo[];
	functions: SysFunctionBo[];
}
/**
 * 菜单与按钮的映射返回对象
 */
export interface MenuButtonVo {
	menuButtonDicList: { [key: string]: string[]; };
}
//菜单最终返回参数
// export interface MenuRes {
// 	code: number;
// 	message: string;
// 	data: SysMenuInfoBo[];
// }
//菜单信息
export interface SysMenuMetaBo {
	title: string;
	icon: string;
	type: string;
	isActive: number;
}
//按钮信息
export interface SysFunctionBo {
	name: string;
	id: string;
	number: number | null;
	title: string;
	isSelect: boolean;
}
/**
 * 返回菜单信息
 */
export interface MenuInfoVo {
	name: string;
	path: string;
	icon: string;
}